package com.tianji.remark.service;

import com.tianji.remark.domain.dto.LikeRecordFormDTO;
import com.tianji.remark.domain.po.LikedRecord;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;
import java.util.Set;

/**
 * <p>
 * 点赞记录表 服务类
 * </p>
 *
 * @author LYQ
 * @since 2024-06-28
 */
public interface ILikedRecordService extends IService<LikedRecord> {
    /**
     * 点赞或取消点赞
     * @param likeRecordDTO
     */
    void addLikedRecord(LikeRecordFormDTO likeRecordDTO);

    /**
     * 根据业务ID集合查询是否已经点赞
     * @param bizIds
     */
    Set<Long> isLiked(List<Long> bizIds);


    /**
     * 定时任务触发，查询redis 中的点赞次数，并发送消息到对应微服务持久化到mysql
     * @param bizType
     */
    void checkLikedTimesAndSendMsg(String bizType,Integer maxBizSize);
}
